It is well known that the Viterbi algorithm may be used for the maximum likelihood detection of data. In the absence of parity encoding, the partial response maximum likelihood/noise predictive maximum likelihood (PRML/NPML) detection of data can be accomplished by using a Viterbi detector with 2s states. When using t bits of parity with the Viterbi algorithm, maximum likelihood decoding for a partial response system would require a Viterbi detector with 2s+t states. Unfortunately, the post-processor schemes that are available perform sub-optimal detection for partial response systems with parity. These schemes may combine the Viterbi detector and a post-processor. The Viterbi detector utilizes 2s states for de-convolving the data out of the partial response signaling without taking parity bits into account while a post-processor may utilize t parity bits to locate the error events in the Viterbi output. For single bit parity codes, conventional post-processing schemes perform well, but for multiple bit parity schemes, such as when using a t bit parity scheme, the performance in bit error rate and, especially, in error correction code failure rate suffers significantly from that of a 2s+t state Viterbi detector.
The limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with some aspects of the present invention as set forth in the remainder of the present application with reference to the drawings.